home *** CD-ROM | disk | FTP | other *** search
- /*
- ** This is a copyrighted work which is functionally identical to work
- ** originally published in Micro Cornucopia magazine (issue #52, March-April,
- ** 1990) and is freely licensed by the author, Walter Bright, for any use.
- */
-
- /*_ toolkit.h Tue Apr 18 1989 Modified by: Walter Bright */
-
- #ifndef TOOLKIT_H
- #define TOOLKIT_H
-
- /* Define stuff that's different between machines.
- * PROTOTYPING 1 if compiler supports prototyping
- * HOSTBYTESWAPPED 1 if on the host machine the bytes are
- * swapped (1 for 6809, 68000, 0 for 8088
- * and VAX).
- */
-
- #ifdef MSDOS
- #define PROTOTYPING 1
- #define HOSTBYTESWAPPED 0
-
- #define BITSPERBYTE 8
- #define SIZEOFINT sizeof(int)
- #define SIZEOFLONG sizeof(long)
-
- #else
- #ifdef M_UNIX /* SCO UNIX using Microsoft C. */
- #define PROTOTYPING 1
- #define HOSTBYTESWAPPED 0
- #define EXIT_SUCCESS 0
- #define EXIT_FAILURE 1
-
- #define BITSPERBYTE 8
- #define SIZEOFINT sizeof(int)
- #define SIZEOFLONG sizeof(long)
- #else /* NOTE: host.h is *NOT* included in SNIPPETS */
- #include "host.h" /* Compiler/environment-specific stuff goes here */
- #endif
-
- #endif
-
- /* Static definitions do not appear in the linker .MAP file. Override */
- /* the definition here to make them global if necessary. */
- #ifndef STATIC
- #define STATIC static
- #endif
-
- #define arraysize(array) (sizeof(array) / sizeof(array[0]))
-
- /* Macros so that we can do prototyping, but still work with non- */
- /* prototyping compilers: */
-
- #if PROTOTYPING
- #define P(s) s
- #else
- #define P(s) ()
- #endif
-
- #ifdef DEBUG
- #define debug(a) (a)
- #else
- #define debug(a)
- #endif
-
- #endif /* TOOLKIT_H */
-